home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1994 November / macformat-018.iso / Utility Spectacular / Developer / PopUpFunctions2.37Demo / PUF 2.0 Readme < prev   
Encoding:
Text File  |  1993-06-23  |  6.3 KB  |  129 lines  |  [TEXT/R*ch]

  1. Dear Software Developer;
  2.  
  3. Thank you for ordering PopUpFuncs, the great utility with the mediocre name.
  4.  
  5. This version of PUF works in four environments (MPW, Sade, ThinkC, and BBEdit).
  6. It can parse the C, Pascal, Asm, and Rez languages, object oriented versions too.
  7.  
  8. Installation-------- To install, launch the installer application.  Click the
  9. "Install" button.  Find and choose your editor (MPW, ThinkC, BBEdit, SADE, etc). 
  10. The installer will copy a WDEF and some supporting resources to the resource
  11. fork of the chosen file.  To remove, click the remove button.
  12.  
  13. There is a generic interface that we developed for BBEdit to allow any editor
  14. to support PUF (and visa versa). If you have an editor that you've written, and
  15. would like to add PUF support,  let me know.
  16.  
  17. Use----------------- To use, click on the controls (they'll be in the titlebar
  18. of your source code window).  To get access to whatever xPops are installed,
  19. hold down the command key while clicking.  To sort the list of function names
  20. alphabetically, hold down the shift key while clicking.
  21.  
  22. If you don't see the controls, PUF doesn't think it can parse the file.  Change
  23. the file suffix or add your suffix(es) to a list contained in the file suffix
  24. resource.  Read below for more about the 'puf!' resource type.
  25.  
  26. Customization------- We've introduced a special resource type to allow PUF to
  27. be configured.  It's called 'puf!', and is formatted as an array of records,
  28. each of which is a byte followed by a pascal string.  Each record follows right
  29. on the heels of the preceding record. 
  30.  
  31. Whenever PUF uses a 'puf!' resource, it searches for it by id.  See below for
  32. current id's and their meanings.  To configure a 'puf!' resource, you can alter
  33. the resource itself, or make a new resource, adding 100 to the id.  We suggest
  34. the latter, to prevent having new copies of the installer overwrite your
  35. customizations. For example, to add your own file suffixes, you could alter
  36. 'puf!'(128) or add 'puf!'(228).  
  37.  
  38. For your editing convenience, you'll find a Resorcerer (and ResEdit) template
  39. in the  installer.  Eventually, the installer will copy this resource into the
  40. Preferences files for these two editors, until then, do it yourself.
  41.  
  42. puf!(128)    file suffixes
  43.     Each record is a language code followed by a suffix.
  44.     Suffixes are matched in a case-insensitive fashion. Language codes are defined
  45.     in the file "xpop.h".  They are numbered from zero in the following order:
  46.     _none,_c,_cplusplus,_pascal,_objectpascal,_rez,_asm. 
  47.  
  48. puf!(129)    assembly parser configuration
  49.     All labels that don't have anything following them are marked and
  50.     indented. Labels that are followed by an operand are marked according
  51.     to that operand's key in the 'puf!' resource.  Operands not in the 
  52.     resource are not marked.  Keys and their meanings (and example values):
  53.     0   - mark the label , major. (e.g. PROC,FUNC)
  54.     1   - mark the label, minor 
  55.     2   - mark the parameter, major. Useful for macros whose first parameter 
  56.             is the real function name.
  57.     3    - mark the label, local, with a † next to it (e.g. RECORD)
  58.     
  59. Guarantee---------- We're pretty sure that you'll soon find PUF an
  60. indespensible part of your programming environment.  We're so sure that you'll
  61. like it, we guarantee it.  If you find at any time that you can live without
  62. it, let us know and we'll refund your money.
  63.  
  64. Please no piracy!-- We're relying on word-of-mouth to promote this utility,
  65. we've kept the price low, we're giving you the unusual guarantee, and we've
  66. sent you a high-quality diskette.  In return for this, we ask that you tell
  67. everyone you know that they need PUF, and give them our address instead of a
  68. copy of PUF.
  69.  
  70. You can also give them a copy of the application "PopUpFuncs Demo".  It
  71. installs a moderately crippled version of PUF which will stop parsing after
  72. 25-30 uses. Relaunching the application will give the user another 25-30 uses. 
  73. It's incredibly easy to circumvent the code that implements the crippling, our
  74. point wasn't to show that we know how to do copy-protection.  Our point was to
  75. show the potential purchaser just how quickly the time goes by.
  76.  
  77. Ordering------------------------------------------------------
  78. The price is $45 (single user) plus $3 for shipping and handling, add the
  79. sales tax appropriate to your mailing address if shipping to California.
  80. For shipping outside the U.S. and Canada, shipping is $6.
  81.  
  82. We no longer offer site licenses, instead a quantity discount is available.
  83. The discount schedule is as follows:
  84.  
  85. 2 copies    %10                11-24        %30
  86. 3-5            %15                25-49        %35
  87. 6-10        %20                > 50        %45
  88.  
  89. The discount is cumulative for shipments to the same address, you don't have to
  90. order the copies at the same time.
  91.  
  92. If you truly can't afford the price, for whatever reason, give us a call and 
  93. tell us what you can afford.
  94.  
  95. Warnings------------
  96. The toolbox trap PopUpMenuSelect does funny things when you try to display a
  97. popup near the top of the screen of an alternate monitor (that is, a monitor
  98. without the menubar on it).  You'll see this if you place a window at the top
  99. of your alternate monitor and then invoke PUF.  This is a cosmetic bug, as far
  100. as we can tell.
  101.  
  102. The C parser doesn't like some forms of C++ operator-overloading.  This will
  103. be dealt with in a future version.
  104.  
  105. Developers interested in writing their own xPops should contact us.  We
  106. designed the interface according to our own projected needs and are interested
  107. in getting feedback from developers concerning any needs we didn't anticipate.
  108.  
  109. Installing to an application which is in an AppleShare folder to which you 
  110. don't have write permission will cause the Installer to hang.
  111.  
  112. ------------------------------------------------------
  113. Comments, Questions, Suggestions, Reports, Complaints.
  114.  
  115. If you find that PopUpFuncs can't parse a file, or gets partway then seems to
  116. ignore the remaining functions, please send us a copy of the file.  Most bugs
  117. can be fixed in a few hours if we have the offending file.  If your source code
  118. is too sensitive to release, just use the "Source Masher" utility to convert
  119. your code into a less sensitive form.
  120.  
  121. Since our interest is in fixing PopUpFuncs, and not in stealing your code, you
  122. can be confident that your secrets won't travel further than our machine, and 
  123. once there will be treated as if they were our own.
  124.  
  125. ------------------------------------------------------
  126. ADDRESS            10867 Linda Vista Drive, Cupertino, CA  95014-4748
  127. PHONE            +1 408 255-9700
  128.  
  129.